The present invention relates to a method of authentication between a mobile radiotelephony terminal and a routing subsystem, often referred to as a fixed network, in a digital cellular radiotelephony network. More particularly, the invention improves authentication through the radio interface between a microprocessor card or module, referred to as a SIM (Subscriber Identity Module) chip card, removable from the terminal, and an authentication center for the radiotelephony network.
A digital cellular radiotelephony network RR of the GSM type, to which reference will be made below by way of example, principally comprises several mobile radiotelephony terminals MS and a fixed network proper in which notably signalling, control, data and voice messages circulate, as shown schematically in FIG. 1.
In the network RR shown in FIG. 1 there are depicted notably main entities through which data intended for the SIM card of a mobile terminal MS situated in a location area at one moment pass. These entities are a mobile service switch MSC connected to at least one telephone switch CAA with self-contained routing in the switched telephone network RTC and managing communications for visiting mobile terminals, amongst which is the terminal MS, which are situated at a given moment in the respective location area served by the switch MSC. A visitor location recorder VLR is connected to the switch MSC and contains characteristics, such as the identity and subscription profile of the mobile terminals, i.e. the SIM cards therein, situated in the location area. A base station controller BSC connected to the switch MSC manages notably the allocation of channels to the mobile terminals, the base station power and mobile terminal intercell transfers. A base station BTS connected to the controller BSC covers the radio cell where the terminal MS is situated at a given moment.
The radiotelephony network RR also comprises a nominal location recorder HLR cooperating with an authentication center AUC and connected to the switches of the mobile service through the signalling network of the radiotelephony network RR.
The recorder HLR is essentially a database, such as a recorder VLR, which contains, for each terminal MS, the international identity IMSI (International Mobile Subscriber Identity) of the SIM card of the terminal, i.e. of the subscriber possessing the SIM card, the directory number and the subscription profile of the subscriber, and the number of the recorder VLR to which the mobile terminal is attached and updated at the time of transfers between location areas.
The authentication center AUC authenticates the subscribers and participates in the confidentiality of the data passing through the radio interface IR between the terminal MS and the base station BTS to which it is attached at the given moment. It manages an authentication algorithm A3 and an algorithm A8 for determining the ciphering key, sometimes merged into a single algorithm A38, in accordance with the GSM standard, which are redundant in the SIM card of the mobile terminal MS, prior to any communication with the terminal, or when the terminal is started up or at the time of an intercell transfer. In particular, the authentication center AUC stores an authentication key Ki allocated solely to the subscriber in correspondence with the identity IMSI of the subscriber stored in the nominal location recorder HLR when the subscription is taken out by the subscriber.
It is very important to authenticate the mobile radiotelephony terminal MS in order, amongst other things, to be able to recognise the subscriber. To ensure maximum flexibility, the authentication center does not authenticate the mobile terminal MS itself but the chip card SIM which it contains. This card contains the key Ki allocated to the subscriber and proves by means of the authentication algorithm A3 that it knows the key without revealing it. The fixed network sends a random number RAND (challenge) to the card and requests the card to enter the random number and the key in the authentication algorithm for a cryptographic calculation and to return the results of it in the form of a signed response SRES (Signed RESponse) for the GSM standard. It is very difficult for an “attacker”, a malevolent third party wishing to establish radiotelephony communications debited to the account of the owner of the SIM card, to predict the random number. Without knowledge of the key, the attacker cannot forge a response. The size of the random number prevents the attacker from keeping in memory all the values of the random number/response pair signed in a dictionary. The authentication procedure in the radiotelephony network thus authenticates the SIM card containing a key.
The authentication procedure briefly comprises the following steps:                first, the authentication center AUC chooses several random numbers RAND and determines on the one hand several signature responses respectively as a function of the chosen numbers RAND and the key Ki allocated to the subscriber, applied to the authentication algorithm A3, and on the other hand several ciphering keys respectively as a function of the chosen numbers RAND and the key Ki applied to the key determination algorithm A8, in order to supply triplets [random number, signature response, ciphering key] to the location recorder HLR, as soon as the subscription to the mobile radiotelephony service is taken out, and then each time the recorder HLR has exhausted its reserve of triplets, in correspondence with the identity IMSI of the SIM card of the subscriber;        each time the visitor location recorder VLR to which the SIM card is momentarily attached requests an authentication of the card, the recorder HLR chooses and supplies at least one triplet to the recorder VLR in order to transmit the random number of the chosen triplet to the SIM card through the fixed network and the mobile terminal MS;        the SIM card effects a cryptographic calculation, applying the random number transmitted and the key Ki to the authentication algorithm A3 producing the signed response SRES and returns it to the recorder VLR;        the recorder VLR compares the signed response SRES with the one contained in the chosen triplet, and in the event of equality of responses, the card is authenticated.        
Though this authentication procedure enables the fixed network to authenticate the card, it does not on the other hand enable the SIM card to authenticate the fixed network. No mutual authentication is provided for.
To this drawback there is added another one consisting in being able to choose any numbers sent to the SIM card in an unlimited number.
These two drawbacks make the SIM card vulnerable to attacks by auxiliary channels such as attacks with current or by logic means, for example relating to cryptanalysis.
In the field of cryptography, several types of attack are known, recovering the value of a key serving for a cryptographic calculation.
The first and most simple of the attacks consists in recovering a random number and the result of the authentication algorithm effected with this number and entering all the possible keys and the random number in the algorithm until the recovered result is obtained. In the case of authentication in a GSM network, this attack, referred to as brute force, requires 2127, i.e. a number composed of a 1 followed by 38 zeros, cipherings on average in order to obtain the key. Although this attack does not use the card, since the calculations can be made in a microcomputer, the time which it would take is much too great: with a calculation machine effecting 10,000 calculations per second, this attack would take 5×1026 years.
Attacks of a second type use faults in the design of a cryptographic algorithm. For these attacks, it is very often necessary to enter chosen messages in the algorithm and to analyze the responses. Such an attack has been reported on an algorithm, referred to as COMP128, used as an authentication and A3A8 ciphering key determination algorithm according to the GSM standard. It requires on average choosing 160,000 random numbers and recovering the corresponding results. In the current GSM context, this attack can be carried out since it suffices to recover a SIM card which will effect the cryptographic calculation on any random number, as many times as the attacker requires.
Finally, a third type of attack uses “side channels”. These side channels convey information on the secret data and are generally physical quantities of the implementation of the cryptographic function. A typical example of a side channel is the energy consumption of the chip card. One attack using this channel is DPA (Differential Power Analysis) and currently requires a few thousand executions of the cryptographic algorithm with random numbers which are known but are not required to be chosen. This attack is entirely achievable provided that an attacker is in possession of a SIM card.